今天是第三天,來認識一下靜態網頁與動態網頁爬蟲有什麼不一樣吧!
首先分別介紹這兩者的操作原理,靜態網站是指當網站完成一次請求與回應的動作之後,用戶端便不再與伺服器互動,而是單純在瀏覽器的網頁上做交流,因此資訊不會傳遞到後端的伺服器。這些網頁在每次請求時都是固定的,只要爬蟲閱讀完整份網頁,就可以取得這個網頁所有的資訊並進行分析,所以說靜態網頁爬蟲較容易進行實作。
動態網站則是指內容是由JavaScript在客戶端動態生成的網站會這些變化可能基於用戶操作或數據來自API調用,不斷的與伺服器進行交流,傳送資訊給伺服器,資訊經過伺服器處理回應。許多動態網站甚至需要進行登入的動作,爬蟲必須要知道網站需要什麼資訊,提供了正確的資訊,才能取得所需要的資料,因此通常動態網站爬蟲實作比較複雜。
總結:
靜態網頁爬蟲的特性就是簡單方便執行,不需要處理客戶端邏輯或動態內容,也不需要額外的JavaScript執行來加載或修改內容,因為HTML內容直接可用,因此我們可以用基本的HTTP請求和HTML解析技術來抓取和處理資料。
而動態網頁爬蟲較為複雜且具挑戰性,通常需要解析JavaScript執行後的結果,而不是上面所說可直接用的HTML,還需要處理JavaScript代碼、AJAX請求等,大多使用網頁自動化工具或抓取API數據來獲取需要的資訊。